TTTTccccllll____MMMMeeeerrrrggggeeee is the inverse of TTTTccccllll____SSSSpppplllliiiittttLLLLiiiisssstttt: it takes a
collection of strings given by _a_r_g_c and _a_r_g_v and generates a
result string that has proper list structure. This means
that commands like iiiinnnnddddeeeexxxx may be used to extract the original
elements again. In addition, if the result of TTTTccccllll____MMMMeeeerrrrggggeeee is
passed to TTTTccccllll____EEEEvvvvaaaallll, it will be parsed into _a_r_g_c words whose
values will be the same as the _a_r_g_v strings passed to
TTTTccccllll____MMMMeeeerrrrggggeeee. TTTTccccllll____MMMMeeeerrrrggggeeee will modify the list elements with
braces and/or backslashes in order to produce proper Tcl
list structure. The result string is dynamically allocated
using mmmmaaaalllllllloooocccc(((()))); the caller must eventually release the
space using ffffrrrreeeeeeee(((()))).
If the result of TTTTccccllll____MMMMeeeerrrrggggeeee is passed to TTTTccccllll____SSSSpppplllliiiittttLLLLiiiisssstttt, the
elements returned by TTTTccccllll____SSSSpppplllliiiittttLLLLiiiisssstttt will be identical to
those passed into TTTTccccllll____MMMMeeeerrrrggggeeee. However, the converse is not
true: if TTTTccccllll____SSSSpppplllliiiittttLLLLiiiisssstttt is passed a given string, and the
resulting _a_r_g_c and _a_r_g_v are passed to TTTTccccllll____MMMMeeeerrrrggggeeee, the
resulting string may not be the same as the original string
passed to TTTTccccllll____SSSSpppplllliiiittttLLLLiiiisssstttt. This is because TTTTccccllll____MMMMeeeerrrrggggeeee may use
backslashes and braces differently than the original string.
TTTTccccllll____SSSSccccaaaannnnEEEElllleeeemmmmeeeennnntttt and TTTTccccllll____CCCCoooonnnnvvvveeeerrrrttttEEEElllleeeemmmmeeeennnntttt are the procedures
that do all of the real work of TTTTccccllll____MMMMeeeerrrrggggeeee. TTTTccccllll____SSSSccccaaaannnnEEEElllleeeemmmmeeeennnntttt
scans its _s_r_c argument and determines how to use backslashes
and braces when converting it to a list element. It returns
an overestimate of the number of characters required to
represent _s_r_c as a list element, and it stores information
in *_f_l_a_g_s_P_t_r that is needed by TTTTccccllll____CCCCoooonnnnvvvveeeerrrrttttEEEElllleeeemmmmeeeennnntttt.
TTTTccccllll____CCCCoooonnnnvvvveeeerrrrttttEEEElllleeeemmmmeeeennnntttt is a companion procedure to
TTTTccccllll____SSSSccccaaaannnnEEEElllleeeemmmmeeeennnntttt. It does the actual work of converting a
string to a list element. Its _f_l_a_g_s argument must be the
same as the value returned by TTTTccccllll____SSSSccccaaaannnnEEEElllleeeemmmmeeeennnntttt.
TTTTccccllll____CCCCoooonnnnvvvveeeerrrrttttEEEElllleeeemmmmeeeennnntttt writes a proper list element to memory
starting at *_d_s_t and returns a count of the total number of
characters written, which will be no more than the result
returned by TTTTccccllll____SSSSccccaaaannnnEEEElllleeeemmmmeeeennnntttt. TTTTccccllll____CCCCoooonnnnvvvveeeerrrrttttEEEElllleeeemmmmeeeennnntttt writes out
only the actual list element without any leading or trailing
spaces: it is up to the caller to include spaces between
adjacent list elements.
TTTTccccllll____CCCCoooonnnnvvvveeeerrrrttttEEEElllleeeemmmmeeeennnntttt uses one of two different approaches to
handle the special characters in _s_r_c. Wherever possible, it
handles special characters by surrounding the string with
braces. This produces clean-looking output, but can't be
used in some situations, such as when _s_r_c contains unmatched
braces. In these situations, TTTTccccllll____CCCCoooonnnnvvvveeeerrrrttttEEEElllleeeemmmmeeeennnntttt handles
special characters by generating backslash sequences for
them. The caller may insist on the second approach by OR-